波長スペクトルからRGB,sRGBへ-03
6.必要に応じてRGBをsRGBに変換
前ページで,RGBに変換できたわけですが,ディスプレイなどではすべてのRGB空間を網羅できるわけではないようです.
そこで,補正を掛けたsRGBなどの規格ができたものと思われます.
ここ,に詳しく記載されていますが,変換式は,
sRGB
\( \Large \displaystyle C' =\begin{eqnarray} \left\{ \begin{array}{l}12.92 \ C & (C \leq 0.0031308) \\ 1.055 \ C^{1/2.4} - 0.055 & (C > 0.0031308) \end{array} \right. \end{eqnarray} \)
というとても不思議な値となります.ちなみにAdobeが独自に提案した規格,Adobe RGB,はもう少しシンプルな,
Adobe RGB
\( \Large \displaystyle C' =\begin{eqnarray} \left\{ \begin{array}{l} 32 \ C & (C \leq 0.00174) \\ C^{1/2.2} & (C > 0.00174) \end{array} \right. \end{eqnarray} \)
となっていますが,参考したサイトでは,
RGBの値が小さいときに,曲線の傾きが無限大になるのを避けるため
ということでした.なぜ無限大ではだめなのかが私自身よくわかっていませんが...
実際に図示してみると,
と,私にはsRGBとAdobe RGBはほとんど同じに見えます.....拡大してみると,
と確かに,低い入力の際に直線関係となっていることがわかります.
また,不思議な数値,も二つの線を一致させるための定数なのですね(黄色い縦線で白と赤,青と緑が一致していることがわかります)
次ページに実際に作成したプログラムを動かしてみましょう.